home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 February
/
EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso
/
enigma
/
earcd
/
utility
/
utilfile
/
rw2ent16.lha
/
Raw2Ent.dok
< prev
next >
Wrap
Text File
|
1996-12-06
|
18KB
|
525 lines
Project: Raw2Ent
ARexx : Raw2Ent.rexx
Version: 1.4.1 (14.07.96)
Program: Raw2Ent
Version: 1.6 (06.12.96)
Author : Tamio Patrick Honma
Files : CWISENV
Raw2Ent
Raw2Ent.doc
Raw2Ent.rexx
Raw2Ent.rexx.old
INHALT:
0. VORWORT
1. EINFÜHRUNG
1.1. SYSTEMVORAUSSETZUNG
2. GEBRAUCH
2.1. Raw2Ent VER: 1.6 (06.12.96)
2.2. Raw2Ent.rexx VER: 1.4.1 (14.07.96)
2.3. CWISENV
2.4. ARGUMENT-PRIORITÄT
3. EINSCHRÄNKUNGEN
4. INSTALLATION
5. BEISPIELE
6. TSCHÜSS!
7. LETZTER KOMMENTAR
8. FEHLERMELDUNGEN
9. GESCHICHTE
10.UNTERSTÜTZUNG & MS-DOS-VERSION
0. VORWORT
Diese Anleitung wurde vom Englischen ins Deutsche übersetzt. Umständliche
Formulierungen sind bitte zu übersehen. Danke.
1. EINFÜHRUNG
Raw2Ent kovertiert 8-Bit-breiten ASCII-Text in 7-Bit-breiten ASCII-Text mit
"Entity-Codes" und umgekehrt. Das ASCII-Format ist ein standardisiertes
Format zum Informationsaustausch, aber es ist nur 7-Bit-breit definiert, was
bedeutet, daß 128 Kodierungen definiert sind. Ein Byte besteht aus acht
Bits und kann 256 verschiedene Bit-Kombinationen repräsentieren. Deswegen
können die letzten 128 Kodierungen von jedem OS frei definiert werden. Das
Problem ist, daß Akzent-Buchstaben und andere spezielle Zeichen nicht
standardisiert sind, weil sie (wo wohl?) im freien Bereich des
ASCII-Formates von den OS-Entwicklern definiert wurden.
Das Ziel der "World-Wide-Web"-Entwickler war, daß es auf jedem wichtigen
Betriebssystem ge-/benutzt werden kann. So war es klar, daß der auf
ASCII-basierte HTML-Quelltext Zeichen im standardisierten Sieben-Bit-Bereich
vom ASCII-Format enthalten muß. Um Akzent-Buchstaben oder spezielle Zeichen
im sieben-Bit-Code repräsentieren zu können, mußte etwas erfunden werden.
Und das war der "Entity-Code" - eine Art "Escape-Code". Ein "Entity-Code"
besteht aus einem einführenden "&" und einem ";" am Ende. Zwischen diesen
Symbolen befindet sich der Name des Zeichens, den der "Browser"
interpretieren kann. Es ist eine sehr schwierige und dumme Aufgabe den
ASCII-Text von Hand zu konvertieren. Also benutze einfach Raw2Ent!
Raw2Ent produziert echten "7-Bit-ASCII-Code". Alle druckbaren Amiga-Zeichen
im 8-Bit-Bereich werden in "Entity-Codes" umgewandelt, ohne eine einzige
Ausnahme. Der Gebrauch von Namen anstelle von Code-Nummern wird es Menschen
einfacher machen, die "Entity-Codes" zu lesen.
Du kannst Raw2Ent auch zum Überprüfen benutzen, ob deine Datei pure
sieben-Bit Codes enthält oder nicht. Wenn nicht, Raw2Ent wird die Position
vom 8-Bit Zeichen im Text anzeigen.
1.1. SYSTEMVORAUSSETZUNG
- AmigaOS 2.0 oder größer
- optional: ARexx
2. GEBRAUCH
Raw2Ent besteht aus drei Teilen: einem Assembler-Programm, einem
ARexx-Script und einer Batch-Datei.
Wenn Du einen Text bloß einmal konvertieren willst, brauchst Du das
Assembler-Programm. Falls Du einen Text mehr als einmal konvertieren
willst, weil Du an einem Projekt arbeitest, wie eine Web-Seite mit aktuellen
Informationen, ist das ARexx-Script vielleicht nützlich.
2.1. Raw2Ent VER: 1.6 (06.12.96)
Argumente:
FROM - Die Quelldatei (acht Bit breit)
TO - Die Zieldatei (mit "Entity-Codes")
[Pfad ohne Dateinamen ist nicht akzeptiert]
TAG/S - aktiviert den TAG-Modus
HTML/S - aktiviert den HTML-Mode
ENT/S - voreingestellter Modus
UML=NOENT/S - entfernt 8-Bit-Zeichen mit Zeichen und Worten
CODE/S - konvertiert alle "Entity-Codes" mit Code-Nummern
(ausgenommen den vier "Spezial-Entities")
TOTALCODE/S - konvertiert ALLE Zeichen mit Entity-Code-Nummern
SMART/S - aktiviert den SMART-Modus
INVERSE=ENT2RAW/S - kehrt die Funktion von Raw2Ent in Ent2Raw um
CHECK/S - überprüft, ob die Datei eine 7-Bit-Datei ist
Modi:
>TAG-Modus<
wird die vier Zeichen: & < > " nicht konvertieren. Dies ist für ASCII-Text
brauchbar, der schon "Entity-Codes" oder "HTML-Tags" enthält, die eingeführt
und beendet sind mit "<" und ">" und welche Anführungszeichen enthalten
können. Das Zeichen "&" leitet gewöhnlich die "Entity-Codes" ein. Wenn Du
den TAG-Modus benutzt, wird die Quelldatei nicht ein zweites Mal auf eine
falsche Weise konvertiert, aber unberührte "Spezial-Zeichen" werden
konvertiert. Desshalb solltest Du diesen Modus verwenden, wannimmer Du
einen Text zum zweiten Mal umwandelst.
>HTML-Modus<
wird einfach die Quelldatei in die Zieldatei kopieren. Diese Funktion ist
implementiert, um das Program in Script-Dateien einsetzen zu können. (siehe
z.B. Raw2Ent.rexx)
>ENT-Modus<
ist der voreingestellte Modus und wandelt alle bekannten Zeichen in ihre
"Entity-Codes" um.
>NOENT-Modus< oder >UML-Modus<
ist ein Modus, welcher jedes 8-Bit-Zeichen durch Zeichen im 7-Bit-Bereich
ersetzt, ohne "Character-Entity-Codes" zu verwenden. Z.B.: "ü" wird in
"ue" übersetzt und "£" wird in "pound" übersetzt und "©" wird in "(C)"
übersetzt usw.. Es ist empfohlen dieses Argument in Verbindung mit dem
"TAG"-Argument zu gebrauchen. Optional kannst Du >UML< (wie: Umlaute)
benutzen, welches ein Synonym zu >NOENT< ist. [Dieser Modus wurde
inspiriert durch Andreas Bais]
>CODE-Modus<
wird alle "Entity-Codes" nicht mit "Entity-Namen" konvertieren, aber mit den
"Entity-Code-Zahlen". Dies mag brauchbar sein, wenn ein "Browser" nicht
alle "Entity-Namen" unterstützt, jedoch die Zahlen. Merke: Auf der einen
Seite sind die Code-Zahlen für Menschen schlecht zu lesen, doch auf der
anderen Seite ist die Zieldatei vielleicht kürzer. [Die kleinsten Dateien
werden wohl im "TAG NOENT"-Modus erzeugt.]
>TOTALCODE-Modus< oder >TOTCODE-Modus<
wird JEDES Zeichen mit seiner Code-Zahl umwandeln. Der einzigste Grund für
diesen Modus ist es den Menschen das Lesen der Textdatei schwer zu machen.
Dieser Text wird nur von einem "HTML-Browser" lesbar angezeigt. Dieser
Modus wird sicher die größte Zieldatei erzeugen!
>SMART-Modus<
ist eine Kombination aus dem >ENT<-Modus und dem >TAG<-Modus. HTML-Dateien
z.B. werden ohne Zerstörung von HTML-Tags und "Character-Entity-Codes"
konvertiert - wie im >TAG<-Modus. Der Unterschied ist, daß die Zeichen: <
> & " werden konvertiert, wenn Raw2Ent "denkt", daß diese Zeichen keine
Elemente von den "Character-Entity-Codes" oder HTML-Tags sind. Dies
funktioniert am Besten, wenn die HTML-Datei "guten" Code enthält. Ich kann
keine korrekte Interpreation von Raw2Ent garantieren, aber ich denke es
funktioniert in 95% von HTML-Dateien ohne Fehler.
>INVERSE-Modus< or >ENT2RAW-Modus<
konvertiert alle "Character-Entity-Codes" (Namen und Nummern) in das
Amiga-ASCII - dem Latin-1-Standard. So kannst Du Raw2Ent als ein Ent2Raw
benutzen. Wenn Du den >TAG<-Modus setzt, wird dieser Modus die Zeichen
nicht berühren: > < & und ".
>CHECK-Modus<
überprüft, ob dein Text pures 7-Bit-ASCII ist. Raw2Ent wird dich über die
Position, dem Zeichen und die Klassifikation der 8-Bit-Codes informieren.
Raw2Ent unterscheidet die 8-Bit-Zeichen auf zwei Weisen: jene die innerhalb
von SGML/HTML-Kommentaren und jene außerhalb der Kommentare sind. Das
Programm wird drei verschiedene Text-Datei-Statuse unterscheiden:
Der Text enthält pures 7-Bit-ASCII -> $RC=0 (OK)
Der Text enthält bloß 8-Bit-Zeichen innerhalb von Kommentaren-> $RC=1
Der Text enhält 8-Bit-Zeichen -> $RC=5 (WARN)
Dieser Modus ist unterbrechbar mit dem Unterbrechungssignal CTRL+C.
Rückgabewerte:
$RC=0 (OK) -> alles in Ordnung!
$RC=5 (WARN) -> falscher Gebrauch
$RC=10 (ERROR) -> Fehler (Speicher)
$RC=20 (FAIL) -> Fehler (Ein-/Ausgabe)
2.2. Raw2Ent.rexx VER: 1.4.1 (14.07.96)
Argumente:
FROM/A - Die Quelldatei (acht Bit breit)
TO/A - Die Zieldatei (mit "Entity-Codes")
[Pfad ohne Dateinamen ist nicht akzeptiert]
TAG/S - aktiviert den TAG-Modus
HTML/S - aktiviert den HTML-Mode
ENT/S - voreingestellter Modus
Modi:
siehe Raw2Ent-Gebrauch (2.1.)
Raw2Ent.rexx behandelt:
- Zielpfad ohne Dateinamen
- Suffix-Handhabung (Zieldatei hat das Suffix ".ent")
- Fortschrittsanzeige
- Umgebungsvariablen für Automation ohne Fehler
2.3. CWISENV
Benutze CWISENV um die Umgebungsvariablen für eine spezifische Datei zu
setzen, wenn Du nicht die Raw2Ent.rexx-Argumente gebrauchen willst - z.B.
in Batch-Dateien.
Argumente:
FILENAME/A - ist der Dateinamen für die Eingabedatei für Raw2Ent. Merke:
Benutze keine Pfadnamen! Du mußt den "cd"-Befehl mit dem
Pfadnamen benutzen, wo deine Textdatei (Eingabe) gefunden
werden kann.
MODE/A - wählt den Modus aus. Du kannst wählen: ENT, TAG, HTML
Modi:
siehe Raw2Ent-Gebrauch (2.1.)
2.4. ARGUMENT-PRIORITÄT
höchste Priorität FROM - alle Modi benutzbar
^ TO - alle Modi benutzbar außer "CHECK"
|
| CHECK/S - macht alle anderen Schalter unbrauchbar
| INVERSE/S - macht den Rest der Schalter unbrauchbar
| außer: "TAG"
| HTML/S - macht alle anderen Schalter unbrauchbar
| TOTALCODE/S - macht den Rest der Schalter unbrauchbar
| CODE/S - macht die Schalter unbrauchbar: "NOENT"
| und "ENT"
| NOENT/S - macht den Schalter unbrauchbar: "ENT"
| und "SMART"
| TAG/S - macht den Schalter unbrauchbar: "ENT"
| und "SMART"
v SMART/S - macht den Schalter unbrauchbar: "ENT"
niedrigste Priorität ENT/S - berührt keine anderen Schalter
3. EINSCHRÄNKUNGEN
- Ein Text kann nur in einem Stück konvertiert werden. Keine Markierung
möglich.
- Die Umgebungsvariablen besitzen keine Information zu Pfaden.
So z.B. haben alle "index.html"-Dateien die selbe Variable.
Die Variablen werden ignoriert, wenn Du selbst den "TAG"- oder "HTML"- oder
"ENT"-Schalter benutzt. Bitte merke, daß nur das ARexx-Script Variablen
unterstützt - NICHT das Assembler-Programm!
- Keine Konvertierungs-Fortschritts-Anzeige implementiert. Wenn Du das haben
willst, kannst Du das alte ARexx-Script Raw2Ent.rexx v1.3 benutzen.
- Das alte ARexx-Script [1.3] ist nicht kompatibel zum Assembler-Programm.
- Raw2Ent kann nicht mit "Break"-Signalen gestoppt werden.
- Raw2Ent unterstützt nur das Amiga-8-Bit-ASCII-Format [ISO-8859-1], doch das
ist in Ordnung, weil es viele Möglichkeiten gibt Texte vom PC, Mac, Unix
oder anderen Systemen zu konvertieren:
- Benutze das CrossDOS-Commodity. (Dies ist der beste Weg, weil jeder
AmigaOS 2.1+-Benutzer dieses Programm im "Tools/Commodities"-Verzeichnis
hat!)
- Es gibt viele Konverter im AmiNet oder anderen Freeware-Quellen. Z.B.:
- "CharConv" von Johan Billing [v1.6 von 1994]
- Wenn Du einen guten HTML zu TXT Konverter suchst, dann versuche dieses:
- "HTTX" von Gabriele Favrin [v1.0 von 1996]
4. INSTALLATION
4.1. Kopiere "Raw2Ent" und "Raw2Ent.rexx" in das selbe Verzeichnis.
4.2. Ändere den Pfadnamen im "Raw2Ent.rexx"-Script.
4.3. "makedir ENVARC:cwis/"
5. BEISPIELE
5.1. "Raw2Ent Text.html Text.ent TAG"
Konvertiert die Datei "Text.html" in die Datei "Text.ent" mit Hilfe von
"Entity-Codes" ohne HTML-Tags und schon konvertierte "Entity-Codes" zu
zerstören.
5.2. "Raw2Ent Text Text.ent" oder
"Raw2Ent Text Text.ent ENT"
Konvertiert die Datei "Text" in "Text.ent" ohne Rücksicht auf HTML-Tags oder
schon konvertierten "Entity-Codes".
5.3. "Raw2Ent Text.html Text.ent HTML"
Kopiert bloß die Datei "Text.html" in "Text.ent".
5.4. "Raw2Ent Text.html Text.ent TAG CODE"
Dasselbe wie das Beispiel 5.1., aber alle "Character-Entity-Codes" sind
durch "Code-Nummern" und keine "Code-Namen" repräsentiert.
5.5. "Raw2Ent Text Text.ent CODE"
Dasselbe wie Beispiel 5.2., aber alle "Character-Entity-Codes" sind mit
"Code-Nummern" repräsentiert, ausgenommen den vier Zeichen: < > " ?, welche
noch immer mit ihren "Character-Entity-Namen" repräsentiert werden.
5.6. "Raw2Ent Text Text.uml TAG NOENT" oder
"Raw2Ent Text Text.uml TAG UML"
Dies wird rohen Text in sieben-bit-breiten Text ohne "Character-
Entity-Codes" konvertiert. Raw2Ent wird den Text mit alternativen Zeichen
oder Worten oder Abkürzungen konvertieren. Die Zieldatei in diesem Beispiel
wird keinen einzigen "Character-Entity-Code" enthalten, weil das >TAG<-
Argument benutzt wird.
5.7. "Raw2Ent Text Text.code TOTALCODE"
Die Datei "Text.code" wird nur "Code-Nummer-Entities" enthalten, ohne
jegliche Ausnahme. Die Zieldatei wird sehr lang sein! Merke: Der TAG-Modus
wird ignoriert, wenn dieser Modus verwendet wird. Deshalb wirst Du nicht
fähig sein diesen Modus für HTML-Dateien zu gebrauchen, aber Du kannst diese
Datei nur mit einem HTML-Browser lesen.
5.8. "Raw2Ent Text.ent Text INVERSE" oder
"Raw2Ent Text.ent Text ENT2RAW"
Dies wird die Date "Text.ent" in die Amiga-ASCII-Datei "Text" umwandeln.
5.9. "Raw2Ent Text.ent Text TAG INVERSE" oder
"Raw2Ent Text.ent Text TAG ENT2RAW"
Dies ist dasselbe wie 5.8.. Der einzige Unterschied besteht darin, daß die
Codes: > < & und "e; nicht konvertiert werden.
5.10."Raw2Ent Text CHECK"
Überprüft die Datei "Text" auf 7-Bit-ASCII.
6. TSCHÜSS!
----------------------------------------------------------------------------
DER AUTOR IST NICHT VERANTWORTLICH FÜR JEGLICHEN VERLUSST VON DATEN
ODER PANNEN!
BENUTZE DIESES FREEWARE-PROGRAMM MIT EIGENEM RISIKO.
----------------------------------------------------------------------------
Sende Kommentare an:
Tamio Patrick Honma
eMail: honma@thepentagon.com
WWW: http://www.netforward.com/thepentagon/?honma
P.S. Dieses Programm wurde für das CWIS-Script-System auf Amiga und PC
gemacht. Das CWIS der Heinrich-Heine-Universität Düsseldorf kann hier
gefunden werden:
http://www.phil-fak.uni-duesseldorf.de/cwis/
7. LETZTER KOMMENTAR:
Hey!? Was willst Du!? Ich bin nur ein Soziologie-, Pädagogik- und
Informationswissenschaftsstudent und kein Informatiker!
Sende mir einfach Deine Fehlermeldungen, ... ;)
---> Raw2Ent-Assembler-Program <---
8. FEHLERMELDUNGEN:
gemeldet von Fehler korrigierte Version
Joakim Andersson Entity-Codes Å und å fehlen 1.0.1 (04.09.96)
Tamio Honma Letztes Byte in der Zieldatei wurde gelöscht 1.1 (05.09.96)
Tamio Honma Version-String ohne Leerzeichen 1.1.1 (06.09.96)
Marcus Beranek Entity-Codes zu ÿ,ï,Ï,æ,Æ,ø,Ø,ë,Ë fehlen 1.1.3 (06.09.96)
Tamio Honma Fehler im Circumflex-Akzent 1.1.4 (08.09.96)
9. GESCHICHTE:
Version Funktion Datum
1.0 Ersterscheinung 13.07.06 (*)
1.1 Geschwindigkeit um die 20 (!!!) mal gesteigert 05.09.96
Version-String hinzugefügt
1.1.2 Optimierter Code (Geschwindigkeit gesteigert) 06.09.96
Return-Codes hinzugefügt (siehe Abschnitt 2.1 für
die Return-Codes)
1.1.3 HTML-Tags zu °,¹,²,³ hinzugefügt (improvisiert) 06.09.96
1.1.4 Alle Entity-Codes erhältlich im Amiga-Zeichensatz 08.09.96 (*)15
eingefügt! Entity-Codes beziehen sich auf den HTML 3.2
Standard
Alle erhältlichen Namen eingefügt
Codes ohne Namen repräsentiert durch Code-Nummern
improvisierte HTML-Tags entfernt
1.1.5 Wechselte nur die Code-Nummer mit Code-Namen "§" 14.10.96
1.1.6 wechselte alle Code-Nummern in Entity-Namen (komplett) 30.10.96
1.2 CODE-Modus hinzugefügt 01.11.96 (*)
1.3 NOENT-Modus und TOTALCODE-Modus hinzugefügt 03.11.96 (*)
Version-String wird im Gebrauchstext angezeigt
1.4 SMART-Modus hinzugefügt 06-07.11.96 (*)
1.5 INVERSE-Modus für Namen und Codes hinzugefügt (Ent2Raw)10.11.96 (*)
HELP-Text hinzugefügt
1.6 CHECK-Modus hinzugefügt 06.12.96 (*)
(*) = veröffentlicht im Aminet
Nummer repräsentiert die Nummer der Aminet-CD-ROM
10. UNTERSTÜTZUNG & MS-DOS-VERSION
Wenn Du die neueste Veröffentlichung von Raw2Ent haben willst, so schau in
das Aminet oder sende eine eMail an: honma@thepentagon.com mit dem Betreff:
"+GET Raw2Ent#?"
Wenn Du die MS-DOS-Version von Raw2Ent kriegen willst, versuche diesen
Betreff: "+GET TXT2ENT#?"
Wenn Du eine Beschreibung aller von mir erhältlichen Dateien willst, versuche
diesen Betreff: "+GET README.txt"
Oder um eine Liste aller Dateien zu bekommen, versuche diesen Betreff:
"+GET LIST"
Alle Dateien werden als MIME gesendet. Tipp "+GETUU", wenn Du eine
UUEncoded-Datei haben willst.
Danke an Juan J. García de Soria für sein "YAMServ"-Script
Danke an Marcel Beck für sein "YAM"-Mailer